﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Tradex.Trading {

    /// <summary>
    /// This enumeration contains the different types an order can have in Tradex.
    /// </summary>
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1028")]
    public enum OrderType : byte {

        /// <summary>
        /// This is a market order.
        /// </summary>
        Market,

        /// <summary>
        /// This is a market order once the price has been touched. A trigger needs to be defined.
        /// </summary>
        MarketIfTouched,

        /// <summary>
        /// This is a limit order.
        /// </summary>
        Limit,

        /// <summary>
        /// This is a limit order once the price has been touched. A trigger needs to be defined.
        /// </summary>
        LimitIfTouched,

        /// <summary>
        /// This is a stop limit order. A trigger must be defined.
        /// </summary>
        StopLimit,

        /// <summary>
        /// This is a stop market order. A trigger must be defined.
        /// </summary>
        StopMarket

    }

}
